﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using vudu.Logica.Clases;
using vudu.Logica.Excepciones;
using System.Data;
using vudu.EnlaceDatos.SqlServer;
using System.Data.SqlClient;

namespace vudu.PaginasWeb.G5Profesor
{
    public partial class ConsultarmeProfesor : System.Web.UI.Page
    {
        Profesor miProfesor = new Profesor();

        protected void Page_Load(object sender, EventArgs e)
        {
            
            try
            {
                //OBJETO SESSION 
                string miRol = (string)Session["rol"];
                if (miRol != "Profesor")
                    Response.Redirect("../G3AccesoSistema/InicioSistema.aspx");
                        
                Profesor _p = (Profesor)Session["Usuario"];
                nombreProfesor.Text = "Profesor(a): " + _p.Nombre + _p.Apellido;

                miProfesor = (Profesor)Session["Usuario"];
            }
            catch (Exception)
            {
                miProfesor.Cedula = 14990555; 
            }

                try
                {
                    datosProfesor.DataSource = cargarTabla(miProfesor.Cedula.ToString());
                    datosProfesor.DataBind();
                }
                catch (Exception)
                {
                    LabelError.Text = "Error en Conexión con Base De Datos";
                    LabelError.Visible = true;
                    LabelError.ForeColor = System.Drawing.Color.Red;
                }
           

        }

        protected Profesor buscarMiProfesor(string miCedula)
        {
            //se instancia un objeto de tipo conexion y otro de tipo sqlComand
            Conexion miConexion = new Conexion();
            SqlCommand command = new SqlCommand();
            SqlDataReader reader = null;
            command.Connection = miConexion.ObjetoConexion();
            command.CommandType = System.Data.CommandType.Text;

            try
            {
                //se abre una conexion a la bd vudu
                miConexion.AbrirConexionBd();
                command.Connection = miConexion.ObjetoConexion();
                // Se indica el Query
                command.CommandText = "SELECT * FROM Profesor WHERE id_cedula = " + miCedula;
                command.CommandTimeout = 10;
                reader = command.ExecuteReader();

                if (reader.Read())
                {
                    Profesor miProfesor = new Profesor();

                    miProfesor.Cedula = reader.GetInt32(0);
                    miProfesor.Nombre = reader["nombreProfesor"].ToString();
                    miProfesor.Apellido = reader["apellidoProfesor"].ToString();
                    miProfesor.Crn = reader.GetInt32(3);
                    miProfesor.Email = reader["emailProfesor"].ToString();
                    miProfesor.FechaNacimiento = reader.GetDateTime(5);
                    miProfesor.Sexo = reader["sexoProfesor"].ToString();
                    miProfesor.Telefono = reader["telefonoProfesor"].ToString();
                    miProfesor.TiempoLaboral = reader["contratoProfesor"].ToString();
                    miProfesor.Estatus = reader["estadoProfesor"].ToString();
                    miProfesor.EspacioMaxCarga = reader.GetInt32(10);
                    miProfesor.EspacioUtilizado = reader.GetInt32(11);

                    return miProfesor;
                }

                return null;

            }
            catch (Exception)
            {
                LabelError.Text = "Error en Conexión con Base De Datos";
                LabelError.Visible = true;
                LabelError.ForeColor = System.Drawing.Color.Red;
                return null;
            }
        }

        public DataTable cargarTabla(string miCedula)
        {
            DataTable miTabla = new DataTable();
            Profesor profesor = new Profesor();

            miTabla.Columns.Add("Cédula", typeof(string));
            miTabla.Columns.Add("Apellido", typeof(string));
            miTabla.Columns.Add("Nombre", typeof(string));
            miTabla.Columns.Add("Fecha Nacimiento", typeof(string));
            miTabla.Columns.Add("Teléfono", typeof(string));
            miTabla.Columns.Add("Email", typeof(string));
            miTabla.Columns.Add("Status", typeof(string));
            miTabla.Columns.Add("Tiempo Laboral", typeof(string));

            profesor = buscarMiProfesor(miCedula);

            miTabla.Rows.Add(profesor.Cedula, profesor.Apellido, profesor.Nombre, profesor.FechaNacimiento, profesor.Telefono, profesor.Email, profesor.Estatus, profesor.TiempoLaboral);

            return miTabla;
        }

      
    }
}